<?php
namespace Home\Model;

class FansModel extends \Think\Model
{
	//自动验证
	protected $_validate = array(
			//新增时验证
			array('user_id', '/^[1-9]\d*$/', '请传被关注的用户id', self::MUST_VALIDATE, 'regex', self::MODEL_INSERT),
			array('fans_id', '/^[1-9]\d*$/', '请传入粉丝用户id', self::MUST_VALIDATE, 'regex', self::MODEL_INSERT),
			
			//更新时验证
			array('id',  '/^[1-9]\d*$/', '请传入要更新的记录id', self::MUST_VALIDATE, 'regex', self::MODEL_UPDATE),
			array('status', '/^-?\d$/', '请传要记录状态', self::MUST_VALIDATE, 'regex', self::MODEL_UPDATE),
	);
	
	//自动完成
	protected $_auto = array(
			array('create_time', 'time', self::MODEL_INSERT, 'function'),
			array('update_time', 'time', self::MODEL_BOTH, 'function'),
			array('status', 1, self::MODEL_INSERT, 'string')
	);
	
	/**
	 * 添加粉丝
	 * @param array $data
	 * @return array
	 */
	public function addFans($data)
	{
		//判断数据对象是否创建成功
		if(!$this->create($data)) return array('error' => 1, 'info' => $this->getError());
		$res = $this->add();
		//添加出错
		if($res === false) return array('error' => 2, 'info' => $this->getError() . '---' . $this->getDbError());
		
		//添加成功
		return array('error' => 0, 'info' => '关注成功');
	}
	
	/**
	 * 编辑粉丝记录
	 * @param array $data
	 * @return array
	 */
	public function editFans($data)
	{
		//判断数据对象是否创建成功
		if(!$this->create($data)) return array('error' => 1, 'info' => $this->getError());
		$res = $this->save();
		//编辑出错
		if($res === false) return array('error' => 2, 'info' => $this->getError() . '---' . $this->getDbError());
	
		//编辑成功
		if($res) return array('error' => 0, 'info' => '取消关注成功');
		return array('error' => 1, 'info' => '取消关注失败');
	}
}